package com.lcdpg.lcdp.auth.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.Set;

/**
 * @author admin
 * @version 1.0.0
 * @ClassName User.java
 * @Description TODO
 * @createTime 2025年05月23日 17:28:00
 */

@TableName("user")
@Data // Lombok 注解，自动生成 Getter/Setter
public class User {
    @TableId(value ="id" ,type = IdType.AUTO) // 主键自增

    private Long id;

    private String username;
    private String password;

    // ManyToMany 关系需要手动处理，在 MyBatis-Plus 中没有直接的注解支持
    // 可以通过 Mapper 和 Service 层来实现多表查询
    @TableField(exist = false) // 指定该字段不存在于表中，用于存放多对多关系的缓存
    private Set<Role> roles;

}
